
对于zip文件网上的例子很多，rar文件解压php没有直接支持，可以用pecl



到http://pecl.php.net/package/rar     下载对应版本的  非线程安全的dll

然后扔到php的 ext目录下。

打开php.ini.

加一行

extension=php_rar.dll

重启web服务器 和php
<?php

/**
 * Created by PhpStorm.
 * User: Administrator
 * Date: 2019/8/19
 * Time: 16:53
 */
class 解压rar文件
{
    public function _unzip($fileName,$extractTO){

        $fileName = iconv('utf-8','gb2312',"upload/zip/8月.rar");
//        echo $fileName . '</br>';
        $extractTo = "upload/zip/TEST/";

        $rar_file = rar_open($fileName) or die('could not open rar');
        $list = rar_list($rar_file) or die('could not get list');
//        print_r($list);



        foreach($list as $file) {
            $pattern = '/\".*\"/';
            preg_match($pattern, $file, $matches, PREG_OFFSET_CAPTURE);
            $pathStr=$matches[0][0];
            $pathStr=str_replace("\"",'',$pathStr);
//            print_r($pathStr);
            $entry = rar_entry_get($rar_file, $pathStr) or die('</br>entry not found');
            $entry->extract($extractTo); // extract to the current dir
        }
        rar_close($rar_file);

    }
}


